/**
 * 
 */
package com.googlecode.easyibatis.core.utils;

import java.util.List;

/**
 * @author Administrator
 * 
 */
public class ManyToOneHandler {
	private String fieldName;
	private String columnName;
	private String referencedTableName;
	private String aliasTableName;
	private String referencedColumnName;
	private Object referencedColumnValue;
	private List<StringHandler> selectReferencedColumnNames;

	/**
	 * 
	 */
	public ManyToOneHandler() {
		super();
	}

	/**
	 * @param fieldName
	 * @param referencedColumnValue
	 */
	public ManyToOneHandler(String fieldName, Object referencedColumnValue) {
		super();
		this.fieldName = fieldName;
		this.referencedColumnValue = referencedColumnValue;
	}

	/**
	 * @param fieldName
	 * @param columnName
	 * @param referencedTableName
	 * @param aliasTableName
	 * @param referencedColumnName
	 * @param selectReferencedColumnNames
	 */
	public ManyToOneHandler(String fieldName, String columnName, String referencedTableName, String aliasTableName,
			String referencedColumnName, List<StringHandler> selectReferencedColumnNames) {
		super();
		this.fieldName = fieldName;
		this.columnName = columnName;
		this.referencedTableName = referencedTableName;
		this.aliasTableName = aliasTableName;
		this.referencedColumnName = referencedColumnName;
		this.selectReferencedColumnNames = selectReferencedColumnNames;
	}

	/**
	 * @return the fieldName
	 */
	public String getFieldName() {
		return fieldName;
	}

	/**
	 * @param fieldName
	 *            the fieldName to set
	 */
	public void setFieldName(String fieldName) {
		this.fieldName = fieldName;
	}

	/**
	 * @return the columnName
	 */
	public String getColumnName() {
		return columnName;
	}

	/**
	 * @param columnName
	 *            the columnName to set
	 */
	public void setColumnName(String columnName) {
		this.columnName = columnName;
	}

	/**
	 * @return the referencedTableName
	 */
	public String getReferencedTableName() {
		return referencedTableName;
	}

	/**
	 * @param referencedTableName
	 *            the referencedTableName to set
	 */
	public void setReferencedTableName(String referencedTableName) {
		this.referencedTableName = referencedTableName;
	}

	/**
	 * @return the referencedColumnName
	 */
	public String getReferencedColumnName() {
		return referencedColumnName;
	}

	/**
	 * @param referencedColumnName
	 *            the referencedColumnName to set
	 */
	public void setReferencedColumnName(String referencedColumnName) {
		this.referencedColumnName = referencedColumnName;
	}

	/**
	 * @return the referencedColumnValue
	 */
	public Object getReferencedColumnValue() {
		return referencedColumnValue;
	}

	/**
	 * @param referencedColumnValue
	 *            the referencedColumnValue to set
	 */
	public void setReferencedColumnValue(Object referencedColumnValue) {
		this.referencedColumnValue = referencedColumnValue;
	}

	/**
	 * @return the selectReferencedColumnNames
	 */
	public List<StringHandler> getSelectReferencedColumnNames() {
		return selectReferencedColumnNames;
	}

	/**
	 * @param selectReferencedColumnNames
	 *            the selectReferencedColumnNames to set
	 */
	public void setSelectReferencedColumnNames(List<StringHandler> selectReferencedColumnNames) {
		this.selectReferencedColumnNames = selectReferencedColumnNames;
	}

	/**
	 * @return the aliasTableName
	 */
	public String getAliasTableName() {
		return aliasTableName;
	}

	/**
	 * @param aliasTableName
	 *            the aliasTableName to set
	 */
	public void setAliasTableName(String aliasTableName) {
		this.aliasTableName = aliasTableName;
	}

}
